8.2 特殊メソッド
イテラブルなオブジェクトとして振る舞う
イテラブルとイテレータで実装
・イテラブル
__iter__()を実装したオブジェクト
__iter__()の戻り値は任意のイテレータ
「for文や内包表記で使える」
for文はオブジェクトの__iter__を呼び出し、返り値のイテレータを得ている
・イテレータ
__iter__()と__next__()を実装したオブジェクト
__iter__()の戻り値は自分自身(self) (以上、Kindle の位置No.3770-3773 より)
(感想:ここの話ってデザインパターン?)
コンテナオブジェクトとして振る舞う
__getitem__・__setitem__
辞書をカスタマイズした例
__contains__(in演算子)
__iter__や__getitem__へのフォールバックも紹介